import Vector from "../common/calc/vector"

function TargetGrid(x,y) {
    this.pos = new Vector(x, y);  // 网格点所处位置

    // this.canvas = canvas;  // 储存绘图上下文
    // this.size = [4, 4];  // 网格的尺寸,例如[4,5]
    // this.row_num = this.size[0];  // 横排数量
    // this.column_num = this.size[1];  // 纵排数量
    // let x_coordinate = [];  // x轴坐标
    // let x_piece = 40;
    // for (let i = 0; i < this.column_num + 1; i++) {
    //     x_coordinate.push(240+x_piece * i);
    // }
    // this.x_coordinate = x_coordinate;
    // let y_coordinate = [];  // y轴坐标
    // let y_piece = 40;
    // for (let i = 0; i < this.row_num + 1; i++) {
    //     y_coordinate.push(240+y_piece * i);
    // }
    // this.y_coordinate = y_coordinate;



    // draw(ctx) {
    //     ctx.save();
    //     // 绘制格子边框
    //     ctx.beginPath();
    //     for (let scale of this.x_coordinate) {
    //         // ctx.moveTo(scale, 0);
    //         // ctx.lineTo(scale, ctx.canvas.height)
    //         ctx.moveTo(scale, 240)
    //         ctx.lineTo(scale, 560)
    //     }
    //     for (let scale of this.y_coordinate) {
    //         // ctx.moveTo(0, scale);
    //         // ctx.lineTo(ctx.canvas.width, scale)
    //         ctx.moveTo(240, scale)
    //         ctx.lineTo(560, scale)
    //
    //     }
    //     ctx.lineWidth = 2;
    //     ctx.strokeStyle = "red";
    //     ctx.stroke();  // 绘制
    //     ctx.restore()
    // }



    //网格点的绘制方法
    this.draw = function (ctx) {
        // 保存canvas状态
        ctx.save();
        // canvas平移
        ctx.translate(this.pos.x, this.pos.y);
        // 绘制网格中心
        ctx.beginPath();

        ctx.moveTo(0, 0);
        ctx.arc(0, 0, 2, 0, 2 * Math.PI, false);

        ctx.closePath();
        //ctx.fillStyle = "red";
        ctx.lineWidth = "0.3";
        ctx.fillStyle = "red";
        ctx.strokeStyle = "red";
        ctx.fill();
        ctx.stroke();

        // // 绘制五角星
        // ctx.beginPath();
        // //设置五个顶点的坐标，根据顶点制定路径
        // for (let i = 0; i < 5; i++) {
        //     ctx.lineTo(Math.cos((18 + i * 72) / 180 * Math.PI) * 7, -Math.sin((18 + i * 72) / 180 * Math.PI) * 7);
        //     ctx.lineTo(Math.cos((54 + i * 72) / 180 * Math.PI) * 3, -Math.sin((54 + i * 72) / 180 * Math.PI) * 3);
        // }
        // ctx.closePath();
        // //设置边框样式以及填充颜色
        // ctx.lineWidth = "0.6";
        // ctx.fillStyle = "#F6F152";
        // ctx.strokeStyle = "#F5270B";
        // ctx.fill();
        // ctx.stroke();

        // 恢复canvas绘图状态
        ctx.restore();


    }

    // 转成String的方法
    this.toString = function(){
        return `${this.pos.x}&#${this.pos.y}&#`
    }
}
// 导出
export default TargetGrid;